import { Banner } from 'fumadocs-ui/components/banner'
import { PlayIcon } from 'lucide-react'
import Link from 'next/link'
import { type ComponentProps, Suspense } from 'react'
import { Countdown } from '../components/countdown'
import { ReactParisLogo } from '../components/react-paris'
import { cn } from '../lib/utils'

// Note: top-level banners go into src/app/layout.tsx
// Note: sidebar banners go into src/app/docs/layout.tsx & playground/layout.tsx

export function SideBanner() {
  // Note: add banners here to enable them
  return null
}

export function NuqsV2AnnouncementTopBanner() {
  return (
    <Banner
      variant="rainbow"
      className="text-md gap-4 font-semibold"
      id="nuqs-2-announcement"
    >
      <span aria-hidden>🎉</span>
      <Link
        href="/blog/nuqs-2"
        className="decoration-slice decoration-1 transition-all hover:underline hover:underline-offset-8 focus-visible:underline focus-visible:outline-none"
        prefetch={false}
      >
        Announcing nuqs version 2
      </Link>
      <span aria-hidden>🎉</span>
    </Banner>
  )
}

export function NuqsV2AnnouncementSidebarBanner() {
  return (
    <div className="my-2 flex justify-center gap-2 rounded-lg border border-blue-500/40 bg-blue-100/50 py-2.5 font-semibold dark:bg-blue-700/10">
      <span aria-hidden>🎉</span>
      <Link
        href="/blog/nuqs-2"
        className="text-blue-900 hover:underline focus-visible:underline focus-visible:outline-none dark:text-blue-100"
        prefetch={false}
      >
        Announcing nuqs v2 !
      </Link>
      <span aria-hidden>🎉</span>
    </div>
  )
}

export function ReactParis2025SideBanner() {
  return (
    <div className="my-2 flex flex-col items-center gap-1.5 rounded-lg border border-gray-500/40 bg-gray-100/50 px-2 py-4 dark:bg-gray-700/10">
      <p className="text-muted-foreground">🗣️ nuqs will be featured at</p>
      <div className="flex gap-2">
        <ReactParisLogo className="h-12" />
        <p className="mr-1">
          <span className="text-lg font-bold text-[#002654] uppercase dark:text-[#00acff]">
            React
          </span>{' '}
          <span className="text-lg text-[#cd1126] uppercase dark:text-[#fe6497]">
            Paris
          </span>{' '}
          <span className="text-lg">'25</span>
          <br />
          <a
            href="https://react.paris/#tickets"
            className="text-sm hover:underline"
          >
            Get your ticket now!
          </a>
        </p>
      </div>
      <Suspense>
        <Countdown
          targetDate={new Date('2025-03-20T15:00:00+01:00')}
          className="my-2"
        />
      </Suspense>
      <p className="text-muted-foreground text-center text-xs">
        Use the code <code>Francois_Paris</code> for a 20% discount on your
        ticket.
      </p>
    </div>
  )
}

// --

const NEXTJS_CONF_2025_TALK_TIME = new Date('2025-10-22T13:55:00-07:00')

export function NextJSConf2025WideBanner({
  className
}: {
  className?: string
}) {
  return (
    <div
      className={cn(
        'dark:border-b-border flex min-h-11 flex-col items-center justify-center gap-2 border-b border-transparent bg-zinc-50 p-2 shadow-md sm:flex-row sm:gap-4 dark:bg-zinc-900/50',
        className
      )}
    >
      <p className="text-sm sm:text-base">
        Watch nuqs at <NextJSConf2025Logo />
      </p>
      <span
        aria-hidden
        className="text-muted-foreground hidden text-xs sm:block"
      >
        •
      </span>
      <a
        href="https://nextjs.org/conf"
        className="-ml-1.5 text-sm hover:underline sm:text-base"
      >
        <PlayIcon className="mr-1 mb-[2px] inline-block size-4 fill-current stroke-none" />{' '}
        Livestream
      </a>
      <span
        aria-hidden
        className="text-muted-foreground hidden text-xs sm:block"
      >
        •
      </span>
      <Suspense
        fallback={
          <div className="h-6 w-[150px] animate-pulse rounded-md bg-zinc-500/20" />
        }
      >
        <Countdown
          targetDate={NEXTJS_CONF_2025_TALK_TIME}
          className="min-w-[150px] text-lg"
          expiredMessage={
            <span className="flex items-center gap-2 font-mono text-sm font-semibold text-red-700 dark:text-red-400">
              <div className="size-4 rounded-full bg-red-500" />
              LIVE
            </span>
          }
        />
      </Suspense>
    </div>
  )
}

export function NextJSConf2025SideBanner({
  className
}: {
  className?: string
}) {
  return (
    <div
      className={cn(
        'mt-2 flex flex-col items-center gap-3 rounded-lg border border-gray-500/40 bg-gray-100/50 px-2 py-3 dark:bg-gray-700/10',
        className
      )}
    >
      <p>
        Watch nuqs at <NextJSConf2025Logo />
      </p>
      <a
        href="https://nextjs.org/conf"
        className="-ml-1.5 text-sm hover:underline"
      >
        <PlayIcon className="mr-1 mb-[2px] inline-block size-4 fill-current stroke-none" />{' '}
        Livestream
      </a>
      <Suspense>
        <Countdown
          targetDate={NEXTJS_CONF_2025_TALK_TIME}
          expiredMessage={
            <span className="flex items-center gap-2 font-mono text-sm font-semibold text-red-700 dark:text-red-400">
              <div className="size-4 rounded-full bg-red-500" />
              LIVE
            </span>
          }
        />
      </Suspense>
    </div>
  )
}

export const NextJSConf2025Logo = ({
  className = 'align-center mb-[1px] ml-0.25 inline-block h-[1em] w-auto'
}: ComponentProps<'svg'>) => (
  <svg
    viewBox="0 0 144 28"
    className={className}
    fill="none"
    aria-label="Next.js Conf 25"
    xmlns="http://www.w3.org/2000/svg"
  >
    <path
      d="M0 4.00015H4.19672L12.6437 18.9013V4.00015H16.2341V23.8142H11.9264L3.58845 9.3297V23.8142H0V4.00015Z"
      fill="currentColor"
    ></path>
    <path
      d="M25.5595 24.1485C24.1051 24.1485 22.831 23.826 21.7353 23.1851C20.6415 22.5442 19.7994 21.6369 19.2089 20.4652C18.6204 19.2916 18.3252 17.9257 18.3252 16.3614C18.3252 14.8172 18.6204 13.4553 19.2089 12.2736C19.7994 11.092 20.6316 10.1807 21.7075 9.53978C22.7854 8.89687 24.0417 8.5764 25.4762 8.5764C26.8752 8.5764 28.1037 8.89285 29.1618 9.52575C30.2199 10.1586 31.0402 11.0739 31.6188 12.2736C32.1993 13.4733 32.4887 14.9014 32.4887 16.5577V17.3669H21.9968C22.0721 18.6507 22.4208 19.6281 23.047 20.297C23.6731 20.966 24.5192 21.3024 25.5872 21.3024C26.36 21.3024 27.0138 21.1202 27.5469 20.7577C28.0799 20.3952 28.4484 19.8884 28.6506 19.2375L32.2687 19.4598C31.8625 20.9119 31.0659 22.0555 29.879 22.8927C28.6922 23.7299 27.2517 24.1485 25.5595 24.1485ZM28.817 14.9675C28.7437 13.7758 28.4128 12.8825 27.8223 12.2877C27.2338 11.6928 26.4511 11.3944 25.4762 11.3944C24.5192 11.3944 23.7326 11.7028 23.1163 12.3157C22.5001 12.9306 22.1276 13.8138 21.9968 14.9675H28.817Z"
      fill="currentColor"
    ></path>
    <path
      d="M37.8523 16.2231L32.7164 8.91075H36.5545L39.9507 13.9899L43.236 8.91075H47.1573L42.0768 16.2512L47.3217 23.8139H43.5114L39.9785 18.4543L36.4435 23.8139H32.5519L37.8523 16.2231Z"
      fill="currentColor"
    ></path>
    <path
      d="M54.9393 23.8141C53.4671 23.8141 52.3851 23.4697 51.6956 22.7807C51.0041 22.0917 50.6593 21.0142 50.6593 19.5441V11.6749H48.341V8.91103H50.6593V5.42408H54.1942V8.91103H58.0858V11.6749H54.1942V19.2096C54.1942 19.8966 54.3369 20.3753 54.6202 20.6456C54.9056 20.916 55.3712 21.0502 56.0152 21.0502H58.0858V23.8141H54.9393Z"
      fill="currentColor"
    ></path>
    <path
      d="M64.1833 19.9064H60.1249V23.8131H64.1833V19.9064Z"
      fill="currentColor"
    ></path>
    <path
      d="M65.0831 25.2361H66.5474C67.0982 25.2361 67.5084 25.1159 67.7759 24.8736C68.0434 24.6312 68.1761 24.2046 68.1761 23.5897V8.91096H71.7091V23.7019C71.7091 25.2461 71.3643 26.3477 70.6748 27.0086C69.9833 27.6695 68.8201 28 67.1814 28H65.0831V25.2361ZM68.0929 4H71.7646V7.18051H68.0929V4Z"
      fill="currentColor"
    ></path>
    <path
      d="M80.6772 24.1485C78.561 24.1485 76.9124 23.6918 75.7354 22.7805C74.5584 21.8692 73.9124 20.6515 73.8034 19.1254L77.4196 18.9571C77.5484 19.7582 77.8754 20.3671 78.3985 20.7857C78.9236 21.2043 79.6825 21.4126 80.6772 21.4126C82.4447 21.4126 83.3284 20.8558 83.3284 19.7382C83.3284 19.3857 83.2451 19.0973 83.0787 18.873C82.9142 18.6507 82.6012 18.4544 82.1395 18.2882C81.6798 18.1199 80.9982 17.9617 80.0966 17.8135C78.5887 17.5531 77.4058 17.2327 76.5498 16.8501C75.6938 16.4696 75.0815 15.9949 74.713 15.4281C74.3464 14.8593 74.1621 14.1383 74.1621 13.2651C74.1621 11.8511 74.7051 10.7154 75.7909 9.86023C76.8767 9.00502 78.4124 8.5764 80.4018 8.5764C82.3159 8.5764 83.8099 9.03304 84.8878 9.94433C85.9638 10.8556 86.6136 12.0734 86.8336 13.5995L83.2452 13.7678C83.1164 13.0047 82.8033 12.4038 82.3059 11.9672C81.8086 11.5306 81.1646 11.3103 80.374 11.3103C79.5458 11.3103 78.9157 11.4785 78.4817 11.813C78.0498 12.1495 77.8338 12.5941 77.8338 13.1529C77.8338 13.7477 78.0537 14.1904 78.4956 14.4788C78.9374 14.7672 79.7201 15.0035 80.8436 15.1898C82.3892 15.4321 83.6078 15.7446 84.5014 16.1251C85.3931 16.5057 86.0331 16.9803 86.4195 17.5491C86.8059 18.1159 87 18.8269 87 19.6821C87 21.0961 86.4234 22.1937 85.2741 22.9768C84.1229 23.7579 82.5913 24.1485 80.6772 24.1485Z"
      fill="currentColor"
    ></path>
    <path
      d="M140.192 4.75C141.881 4.75004 143.25 6.11896 143.25 7.80762V20.1924C143.25 21.881 141.881 23.25 140.192 23.25H95.8076C94.119 23.25 92.75 21.881 92.75 20.1924V7.80762C92.75 6.11896 94.119 4.75004 95.8076 4.75H140.192Z"
      stroke="currentColor"
      strokeWidth="1.5"
    ></path>
    <path
      d="M103.49 15.4677C103.164 17.3477 102.027 18.5 100.384 18.5C98.2327 18.5 97 16.7655 97 14.0121C97 11.2345 98.2327 9.5 100.384 9.5C101.943 9.5 103.055 10.5795 103.441 12.3747L102.052 12.4596C101.774 11.3315 101.182 10.7372 100.36 10.7372C99.0787 10.7372 98.3777 11.9016 98.3777 14.0121C98.3777 16.1105 99.0787 17.2628 100.36 17.2628C101.254 17.2628 101.858 16.6078 102.1 15.3827L103.49 15.4677Z"
      fill="currentColor"
    ></path>
    <path
      d="M107.842 18.5C105.811 18.5 104.639 16.7291 104.639 14.0121C104.639 11.2709 105.811 9.5 107.842 9.5C109.872 9.5 111.056 11.2709 111.056 14.0121C111.056 16.7291 109.872 18.5 107.842 18.5ZM106.017 14.0121C106.017 16.0377 106.657 17.2628 107.842 17.2628C109.026 17.2628 109.679 16.0377 109.679 14.0121C109.679 11.9623 109.026 10.7372 107.842 10.7372C106.657 10.7372 106.017 11.9623 106.017 14.0121Z"
      fill="currentColor"
    ></path>
    <path
      d="M112.36 9.68761H114.003L116.614 16.2375V9.68761H117.931V18.2995H116.179L113.665 12.0043V18.2995H112.36C112.36 14.9363 112.36 13.0507 112.36 9.68761Z"
      fill="currentColor"
    ></path>
    <path
      d="M119.588 9.68761H124.99V10.9248H120.929V13.472H124.772V14.6849H120.929V18.2995H119.588V9.68761Z"
      fill="currentColor"
    ></path>
    <path
      d="M126.204 12.3383C126.385 10.7008 127.545 9.5 129.31 9.5C130.965 9.5 132.162 10.5795 132.162 12.035C132.162 13.2722 131.219 14.1334 129.998 14.8612C129.37 15.2129 127.787 16.2561 127.69 17.0687H132.21V18.3059H126.046C126.046 15.7345 127.593 14.8127 129.261 13.7695C130.107 13.2358 130.784 12.6779 130.784 12.0229C130.784 11.283 130.18 10.7372 129.31 10.7372C128.367 10.7372 127.751 11.3679 127.581 12.4232L126.204 12.3383Z"
      fill="currentColor"
    ></path>
    <path
      d="M138.541 9.65545V10.8926H134.891L134.589 13.1487C134.976 12.7363 135.616 12.518 136.22 12.518C137.804 12.518 139 13.7552 139 15.4897C139 17.2363 137.743 18.4614 135.955 18.4614C134.359 18.4614 133.066 17.3819 132.945 15.987L134.323 15.9142C134.432 16.7147 135.096 17.2242 136.051 17.2242C136.958 17.2242 137.622 16.5085 137.622 15.4897C137.622 14.4466 136.897 13.7309 135.918 13.7309C135.278 13.7309 134.661 14.0948 134.456 14.5921H133.078L133.755 9.65545H138.541Z"
      fill="currentColor"
    ></path>
  </svg>
)

// --

const REACT_ADVANCED_LONDON_2025_TALK_TIME = new Date(
  '2025-11-28T14:00:00+00:00'
)

export function ReactAdvancedLondon2025WideBanner({
  className
}: {
  className?: string
}) {
  return (
    <div
      className={cn(
        'dark:border-b-border flex min-h-11 flex-col items-center justify-center gap-2 border-b border-transparent bg-zinc-50 p-2 shadow-md sm:flex-row sm:gap-4 dark:bg-zinc-900/50',
        className
      )}
    >
      <p className="text-sm sm:text-base">
        Watch nuqs at React Advanced London <ReactAdvancedLondonLogo />
      </p>
      <span
        aria-hidden
        className="text-muted-foreground hidden text-xs sm:block"
      >
        •
      </span>
      <a
        href="https://reactadvanced.com"
        className="-ml-1.5 text-sm hover:underline sm:text-base"
      >
        <PlayIcon className="mr-1 mb-[2px] inline-block size-4 fill-current stroke-none" />{' '}
        Livestream
      </a>
      <span
        aria-hidden
        className="text-muted-foreground hidden text-xs sm:block"
      >
        •
      </span>
      <Suspense
        fallback={
          <div className="h-6 w-[150px] animate-pulse rounded-md bg-zinc-500/20" />
        }
      >
        <Countdown
          targetDate={REACT_ADVANCED_LONDON_2025_TALK_TIME}
          className="min-w-[150px] text-lg"
          expiredMessage={
            <span className="flex items-center gap-2 font-mono text-sm font-semibold text-red-700 dark:text-red-400">
              <div className="size-4 rounded-full bg-red-500" />
              LIVE
            </span>
          }
        />
      </Suspense>
    </div>
  )
}

export function ReactAdvancedLondon2025SideBanner({
  className
}: {
  className?: string
}) {
  return (
    <div
      className={cn(
        'bg-background z-0 flex flex-col items-center gap-3 border-b px-2 py-3 xl:mt-2 xl:rounded-lg xl:border',
        'md:rounded-br-lg md:border-r',
        'relative before:absolute before:inset-0 before:-z-1 before:rounded-lg before:bg-zinc-50 dark:before:bg-zinc-700/10',
        className
      )}
    >
      <p>
        <ReactAdvancedLondonLogo className="mx-auto h-16" />
        <br />
        Watch nuqs at React Advanced
      </p>
      <a
        href="https://reactadvanced.com"
        className="-ml-1.5 text-sm hover:underline"
      >
        <PlayIcon className="mr-1 mb-[2px] inline-block size-4 fill-current stroke-none" />{' '}
        Livestream
      </a>
      <Suspense>
        <Countdown
          targetDate={REACT_ADVANCED_LONDON_2025_TALK_TIME}
          expiredMessage={
            <span className="flex items-center gap-2 font-mono text-sm font-semibold text-red-700 dark:text-red-400">
              <div className="size-4 rounded-full bg-red-500" />
              LIVE
            </span>
          }
        />
      </Suspense>
    </div>
  )
}

export function ReactAdvancedLondonLogo({
  className = 'align-center mb-[1px] ml-0.25 inline-block h-[1em] w-auto'
}: ComponentProps<'svg'>) {
  return (
    <svg
      className={className}
      viewBox="0 0 966 560"
      fill="none"
      xmlns="http://www.w3.org/2000/svg"
    >
      <path
        d="M260.299 390.306C268.813 390.306 268.898 416.871 253.657 417.467C247.016 417.638 242.588 406.654 242.588 397.714V335.302C242.588 326.277 247.186 313.079 254.679 313.079C268.983 312.994 253.402 342.284 263.279 352.672C264.3 353.779 265.663 354.545 267.195 354.886C268.728 355.141 270.261 354.886 271.623 354.204C272.9 353.694 274.007 352.757 274.773 351.565C275.54 350.458 276.05 349.096 276.136 347.648C276.136 347.137 276.136 346.541 276.05 346.031C275.88 345.52 275.625 345.009 275.284 344.583C274.944 344.157 274.433 343.817 274.007 343.561C273.496 343.306 272.985 343.221 272.389 343.221C271.793 343.221 271.282 343.391 270.771 343.561C270.261 343.732 269.835 344.157 269.494 344.583C269.154 345.009 268.898 345.52 268.728 346.031C268.558 346.541 268.558 347.137 268.728 347.648V347.989C267.876 347.648 267.451 346.456 267.451 344.924C268.047 336.579 275.965 314.867 275.965 305.842C268.558 305.842 261.065 305.587 253.742 305.842C246.25 306.183 239.183 309.503 234.074 314.953C228.965 320.402 226.155 327.724 226.326 335.302V398.139C226.326 414.317 238.587 426.663 253.572 425.982C269.069 425.301 278.009 413.551 278.009 397.629C278.009 378.471 260.469 381.877 260.299 389.965V390.306Z"
        fill="currentColor"
      />
      <path
        d="M211.435 425.555C208.625 425.64 206.411 411.421 206.241 411.166C205.901 407.93 205.305 404.78 204.794 401.63C215.607 397.628 213.138 380.343 202.835 380.769C202.835 380.769 206.922 386.133 203.006 389.539C201.303 378.64 199.515 367.827 197.982 356.843C196.449 345.945 194.661 335.046 192.958 323.977C192.958 323.637 191.085 309.247 193.725 309.247C196.364 309.247 195.513 306.437 195.513 306.437H168.181C168.181 306.437 167.33 309.332 169.884 309.332C172.438 309.332 169.969 323.466 169.884 324.233C167.074 339.133 163.924 353.948 161.114 368.934C158.304 383.919 155.495 398.905 152.685 413.89C152.515 414.657 149.534 429.131 146.725 429.302C144.255 429.387 144 432.367 144 432.367L164.946 430.919C164.946 430.919 165.712 428.025 163.073 428.195C160.688 428.28 162.476 416.7 163.073 413.805C164.265 407.334 169.629 393.456 188.02 399.927C188.616 403.928 189.127 407.845 189.808 411.762C189.893 412.528 191.766 426.322 189.042 426.577C186.317 426.832 187.339 429.557 187.339 429.557C196.194 429.046 205.134 428.535 213.904 428.025C213.904 428.025 213.734 425.215 211.35 425.385L211.435 425.555ZM176.185 390.986C172.779 391.668 169.544 393.03 166.649 395.073C168.522 385.026 170.48 375.149 172.353 365.273C174.227 355.396 176.185 345.519 178.058 335.642C179.506 344.923 180.783 354.204 182.145 363.399C183.422 372.595 184.955 381.791 186.487 390.986C183.082 390.305 179.591 390.305 176.185 390.986Z"
        fill="currentColor"
      />
      <path
        d="M965.214 344.412C965.214 310.269 946.567 296.135 923.493 296.135H901.781C901.781 296.135 901.525 299.2 903.995 299.2C906.464 299.2 906.975 314.441 906.975 315.293V433.389C906.975 434.411 906.805 449.481 904.165 449.226C901.526 448.971 901.951 452.206 901.951 452.206C913.446 453.058 925.026 453.994 936.52 454.846C953.89 456.293 965.384 436.454 965.384 410.911C965.384 402.141 965.299 388.347 965.299 375.32C965.299 362.293 965.214 350.117 965.214 344.412ZM927.324 445.905C926.047 445.82 924.77 445.565 923.578 445.224V306.778C944.098 307.544 948.781 317.847 948.781 343.987V374.554C948.781 387.921 948.866 402.311 948.866 411.081C948.866 428.365 940.777 446.927 927.324 445.905Z"
        fill="currentColor"
      />
      <path
        d="M888.837 392.434V392.605H888.752C888.752 392.605 881.259 389.795 881.259 398.905C881.259 405.461 878.705 431.26 866.274 430.92C863.294 430.835 860.228 430.579 857.333 430.324V395.67C859.036 395.755 870.02 396.691 870.02 400.012C870.02 403.077 872.404 402.737 872.404 402.737V382.217C872.404 382.217 870.02 381.706 870.02 384.771C870.02 388.092 859.036 388.007 857.333 388.007V314.612C860.399 314.612 863.549 314.612 866.699 314.697C882.536 315.122 865.422 346.456 875.384 358.546C876.321 359.738 877.598 360.59 879.045 360.931C880.493 361.271 882.026 361.186 883.473 360.59C884.835 359.994 886.027 359.057 886.879 357.78C887.73 356.503 888.156 355.055 888.241 353.608C888.241 350.883 886.368 348.499 884.495 348.499C882.196 348.329 880.578 350.713 880.578 353.353V353.693C880.152 353.267 879.812 352.757 879.641 352.161C879.471 351.565 879.386 350.969 879.641 350.373C880.237 341.092 887.986 317.251 887.986 307.119C870.701 307.034 853.332 307.034 836.132 306.948C836.132 306.948 835.792 309.929 838.346 309.929C840.9 309.929 841.071 324.318 841.071 325.51V418.148C841.071 419.34 840.9 433.73 838.346 433.474C835.792 433.304 836.132 436.369 836.132 436.369C853.842 437.476 871.468 438.668 889.178 439.945C886.879 428.451 886.112 416.615 886.964 404.865C887.219 400.608 887.986 396.521 889.178 392.434H888.837Z"
        fill="currentColor"
      />
      <path
        d="M805.651 396.606C814.08 396.946 814.25 425.725 799.009 424.959C792.283 424.448 787.94 412.443 787.94 402.906V337.259C787.94 327.808 792.538 314.015 800.031 314.1C814.25 314.185 798.584 345.093 808.631 356.672C809.567 357.864 810.93 358.716 812.462 359.142C813.995 359.482 815.527 359.312 816.975 358.716C818.337 358.12 819.444 357.183 820.296 355.991C821.147 354.799 821.573 353.352 821.573 351.904C821.658 350.797 821.403 349.605 820.636 348.669C819.955 347.732 818.933 347.136 817.741 346.966C816.634 347.051 815.613 347.647 814.931 348.499C814.25 349.35 813.91 350.542 813.995 351.649V351.989C813.143 351.649 812.803 350.287 812.888 348.754C813.399 339.814 821.147 316.654 821.147 306.863C813.739 306.863 806.417 306.522 799.094 306.777C784.109 307.373 771.678 319.805 771.678 337.004V402.14C771.678 418.999 783.939 433.303 799.009 434.24C814.165 435.176 823.361 423.341 823.361 405.971C823.361 385.111 805.736 387.836 805.736 396.606H805.651Z"
        fill="currentColor"
      />
      <path
        d="M81.8381 462.594C79.6243 462.849 78.0917 465.233 78.0917 467.873V468.043C71.9613 468.639 66.6823 454.164 60.5518 438.583C54.3362 423.001 47.0137 405.887 36.626 401.63C45.9069 398.65 53.8254 392.434 58.9341 384.09C64.5536 375.32 68.2149 363.655 68.2149 349.606C68.2149 332.747 63.021 319.379 54.7619 310.269C50.5047 305.671 45.396 302.095 39.6913 299.626C33.9865 297.157 27.7709 295.965 21.5553 296.05H0.0136232C0.0136232 296.05 -0.241812 299.285 2.39769 299.285C5.03719 299.285 5.12233 314.356 5.12233 315.633V436.028C5.12233 437.305 5.12233 452.376 2.39769 452.717C-0.326957 453.057 0.0136232 456.208 0.0136232 456.208C8.95386 455.271 17.8941 454.42 26.9195 453.483C26.9195 453.483 27.1749 450.248 24.5354 450.588C21.8959 450.844 21.6405 435.943 21.6405 434.666V402.566C26.4086 403.843 33.2202 417.041 40.0318 431.686C46.8434 446.246 53.7402 461.912 58.5935 469.065C66.1714 480.389 78.5174 477.579 82.349 474.088C83.3707 473.237 84.2222 472.13 84.8182 470.938C85.4142 469.746 85.6696 468.383 85.6696 467.021C85.6696 464.382 83.9667 462.423 81.8381 462.594ZM23.1731 394.648C22.6622 394.648 22.1514 394.733 21.6405 394.733V304.649C35.8597 304.905 52.3779 318.698 52.3779 349.436C52.3779 375.405 37.4775 393.711 23.1731 394.563V394.648Z"
        fill="currentColor"
      />
      <path
        d="M125.853 394.818C125.853 401.119 123.299 426.152 110.697 427.599C107.802 427.94 104.737 428.11 101.842 428.28V394.222C103.545 394.137 114.443 393.967 114.443 397.117C114.443 400.267 116.913 399.586 116.913 399.586V379.662C116.913 379.662 114.443 379.492 114.443 382.387C114.443 385.622 103.46 386.559 101.842 386.644V314.441C104.907 314.356 108.058 314.271 111.123 314.356C127.045 314.526 109.675 345.434 119.808 356.503C120.829 357.61 122.192 358.376 123.639 358.631C125.087 358.887 126.619 358.631 127.982 357.95C129.344 357.269 130.451 356.332 131.302 355.055C132.154 353.778 132.579 352.331 132.579 350.883C132.579 348.329 130.791 346.2 128.833 346.285C127.726 346.456 126.619 347.052 125.938 347.988C125.172 348.925 124.831 350.032 124.916 351.224V351.564C124.916 351.564 124.235 350.713 124.065 350.117C123.895 349.606 123.895 349.01 124.065 348.414C124.576 339.474 132.239 316.399 132.239 306.693L80.3854 306.948C80.3854 306.948 80.13 310.014 82.6843 309.928C85.2387 309.843 85.4941 324.318 85.4941 325.51V418.233C85.4941 419.425 85.3238 433.815 82.6843 434.07C80.0448 434.24 80.3854 437.306 80.3854 437.306C98.0956 436.028 115.721 434.581 133.431 433.133C131.132 422.32 130.366 411.166 131.132 400.097C131.387 396.01 132.154 392.008 133.346 388.092C133.346 388.092 125.938 386.048 125.938 394.818H125.853Z"
        fill="currentColor"
      />
      <path
        d="M681.592 425.044H681.507C678.782 424.874 676.483 410.569 676.483 410.229C676.143 406.993 675.547 403.928 675.036 400.693C685.849 397.457 683.38 380.173 672.992 379.832C672.992 379.832 677.164 385.452 673.163 388.602C671.46 377.703 669.842 366.89 668.139 356.076C666.436 345.178 664.818 334.364 663.286 323.636C663.201 323.296 661.242 309.162 663.797 309.162C666.351 309.162 665.585 306.352 665.585 306.352C656.474 306.352 647.364 306.267 638.338 306.267C638.338 306.267 637.487 309.076 640.041 309.076C642.851 309.076 640.211 322.7 640.041 323.466C637.146 337.685 634.081 351.819 631.442 366.124C628.717 380.343 625.737 394.307 622.842 408.441C622.757 409.207 619.777 422.66 617.052 422.575C614.583 422.49 614.242 425.214 614.242 425.214L635.188 426.066C635.188 426.066 636.039 423.256 633.4 423.171C631.186 423.171 632.804 412.187 633.4 409.463C634.677 403.332 639.871 390.39 658.262 398.053C658.858 401.885 659.454 405.801 660.135 409.718C660.221 410.484 662.009 424.278 659.369 424.193C656.73 424.107 657.581 426.917 657.581 426.917C666.436 427.258 675.376 427.684 684.232 428.109C684.232 428.109 684.061 425.214 681.592 425.129V425.044ZM646.597 388.091C643.192 388.517 639.871 389.624 636.891 391.412C638.764 381.875 640.637 372.424 642.51 362.973C644.384 353.522 646.342 344.071 648.215 334.62C649.663 343.645 651.025 352.671 652.472 361.696C653.75 370.807 655.197 379.832 656.73 388.857C653.409 387.921 649.918 387.665 646.597 388.091Z"
        fill="currentColor"
      />
      <path
        d="M532.762 314.27C530.208 311.63 527.142 309.502 523.737 308.054C520.331 306.607 516.755 305.841 513.008 305.841H479.206C479.206 305.841 478.865 308.565 481.505 308.565C484.144 308.565 484.229 321.763 484.229 322.529V405.546C484.229 406.312 484.059 419.594 481.505 419.594C478.95 419.594 479.206 422.234 479.206 422.234C490.36 422.234 501.684 422.489 512.923 422.745C516.584 422.745 520.246 422.064 523.566 420.701C526.972 419.339 530.037 417.296 532.592 414.656C535.146 412.017 537.19 408.951 538.552 405.546C539.914 402.14 540.595 398.564 540.51 394.902V334.364C540.51 330.703 539.914 327.042 538.552 323.636C537.19 320.23 535.146 317.08 532.592 314.44L532.762 314.27ZM524.418 394.562C524.418 406.482 515.648 416.274 505.09 416.104C503.642 416.104 502.28 415.933 500.918 415.422V312.737C502.28 312.397 503.642 312.141 505.09 312.141C515.733 312.226 524.418 322.188 524.418 334.109V394.562Z"
        fill="currentColor"
      />
      <path
        d="M310.96 421.383C310.96 421.383 310.279 421.383 309.938 421.638C309.597 421.808 309.342 421.979 309.086 422.319C308.831 422.575 308.746 422.915 308.576 423.256C308.49 423.596 308.49 423.937 308.576 424.278C317.431 424.022 326.456 423.852 335.396 423.596C335.396 423.596 335.737 420.872 333.183 420.872C330.628 420.872 330.288 407.589 330.288 406.823V312.823H333.949C349.871 313.078 332.501 341.346 342.634 351.649C343.655 352.756 345.018 353.522 346.465 353.863C347.913 354.203 349.53 353.948 350.893 353.352C352.17 352.756 353.192 351.904 354.043 350.712C354.809 349.605 355.32 348.243 355.491 346.881C355.491 346.37 355.491 345.774 355.32 345.348C355.15 344.837 354.895 344.412 354.554 343.986C354.213 343.56 353.788 343.219 353.277 343.049C352.766 342.879 352.255 342.709 351.744 342.623C351.233 342.623 350.637 342.794 350.126 343.049C349.616 343.305 349.19 343.645 348.849 344.071C348.509 344.497 348.168 344.922 347.998 345.518C347.827 346.029 347.742 346.625 347.742 347.136V347.392C347.061 347.136 346.721 345.944 346.806 344.497C347.402 336.323 354.895 315.036 354.895 306.096C333.012 306.181 311.13 306.181 289.077 306.266C289.077 315.377 296.826 336.748 297.422 345.008C297.507 346.54 297.166 347.562 296.23 347.988C296.315 347.817 296.4 347.732 296.4 347.647C296.4 347.136 296.4 346.54 296.23 346.029C296.059 345.518 295.804 345.008 295.378 344.582C295.037 344.156 294.527 343.815 294.016 343.645C293.505 343.39 292.994 343.305 292.398 343.305C291.802 343.305 291.291 343.475 290.78 343.645C290.269 343.901 289.844 344.241 289.503 344.667C289.162 345.093 288.907 345.604 288.737 346.114C288.566 346.625 288.566 347.221 288.652 347.732C288.822 349.094 289.333 350.457 290.099 351.564C290.951 352.671 292.057 353.607 293.335 354.118C294.697 354.714 296.23 354.799 297.677 354.544C299.124 354.203 300.487 353.437 301.423 352.33C311.385 341.687 294.271 313.334 310.023 312.993C311.215 312.908 312.407 312.908 313.599 312.908V407.334C313.599 408.356 313.514 421.468 310.96 421.553V421.383Z"
        fill="currentColor"
      />
      <path
        d="M441.24 394.221C441.75 397.968 442.346 401.629 443.028 405.375C443.113 406.142 444.986 419.254 442.261 419.254C439.537 419.254 440.558 421.979 440.558 421.979C449.414 421.979 458.354 422.064 467.209 422.064C467.209 422.064 467.039 419.339 464.655 419.339H464.569C461.76 419.339 459.461 405.716 459.376 405.375C459.035 402.31 458.439 399.33 457.928 396.35C468.741 393.029 466.272 376.511 455.97 376.426C455.97 376.426 459.972 381.705 456.14 384.77C454.437 374.382 452.649 363.995 451.116 353.607C449.584 343.219 447.796 332.832 446.263 322.444C446.178 322.103 444.305 308.395 446.944 308.395C449.584 308.395 448.732 305.755 448.732 305.755H421.401C421.401 305.755 420.464 308.48 423.104 308.48C425.743 308.48 423.274 321.678 423.104 322.359C420.294 336.237 417.144 350.031 414.504 363.824C411.779 377.618 408.799 391.582 405.904 405.46C405.819 406.227 402.669 419.509 400.114 419.509C397.56 419.509 397.305 422.234 397.305 422.234C404.287 422.234 411.183 422.149 418.25 422.064C418.25 422.064 419.017 419.339 416.377 419.339C414.163 419.424 415.866 408.696 416.377 405.971C417.654 399.926 422.933 387.239 441.325 394.136L441.24 394.221ZM425.573 360.759C427.446 351.478 429.404 342.283 431.278 333.087C432.725 341.857 434.002 350.542 435.45 359.227C436.897 367.826 438.174 376.766 439.707 385.366C432.98 383.748 425.828 384.855 419.868 388.346C421.741 379.15 423.7 370.04 425.573 360.674V360.759Z"
        fill="currentColor"
      />
      <path
        d="M756.434 428.791C753.795 428.62 753.539 414.401 753.539 413.635V324.573C753.539 323.551 753.795 309.502 756.434 309.502C759.074 309.502 758.648 306.607 758.648 306.607C749.708 306.607 740.682 306.607 731.827 306.607C731.827 306.607 731.487 309.417 734.126 309.417C736.766 309.417 736.851 323.126 736.851 324.488V372.935C733.615 361.867 730.465 350.713 727.485 339.644C724.505 328.575 721.184 317.591 718.119 306.607C710.882 306.607 703.644 306.522 696.407 306.522C696.407 306.522 696.151 309.332 698.706 309.332C701.26 309.332 701.516 322.955 701.516 324.147V411.506C701.516 412.613 701.345 426.151 698.706 426.066C696.066 425.981 696.407 428.791 696.407 428.791C703.389 429.046 710.286 429.472 717.353 429.727C717.353 429.727 717.523 426.917 714.969 426.832C712.159 426.662 712.074 411.676 712.074 411.676V342.879C716.161 357.354 720.418 371.914 724.505 386.559C728.592 401.118 732.849 416.019 736.936 430.834C744.173 431.175 751.411 431.6 758.733 432.026C758.733 432.026 758.989 429.131 756.519 428.961L756.434 428.791Z"
        fill="currentColor"
      />
      <path
        d="M591.431 421.553C589.047 421.468 591.345 408.1 591.431 407.334C594.326 393.285 597.22 379.321 600.03 365.272C602.84 351.223 605.82 337.089 608.715 323.04C608.885 322.274 611.78 308.821 614.505 308.821C617.23 308.821 617.23 306.011 617.23 306.011H596.454C596.454 306.011 595.688 308.736 598.157 308.736C600.967 308.736 598.242 322.529 598.157 322.955C595.518 335.216 593.134 347.477 590.664 359.653C588.195 371.828 585.641 384.004 583.171 396.265C581.213 383.919 579.255 371.743 577.382 359.567C575.508 347.392 573.72 335.046 571.847 322.87C571.762 322.104 569.548 308.651 572.358 308.651C574.912 308.736 574.146 305.926 574.146 305.926H547.24C547.24 305.926 547.411 308.651 549.88 308.651C552.604 308.651 554.988 322.359 555.074 322.785C557.287 336.663 559.416 350.712 561.545 364.761C563.673 378.81 565.972 392.774 568.186 406.823C568.356 407.164 570.229 421.042 567.505 420.957C565.036 420.957 565.717 423.682 565.717 423.682C574.827 423.937 583.853 424.193 593.048 424.448C593.048 424.448 593.815 421.723 591.345 421.638L591.431 421.553Z"
        fill="currentColor"
      />
      <path
        d="M563.422 479.197C551.927 479.368 542.816 487.882 542.816 498.696V540.331C542.816 550.804 551.927 559.319 563.251 559.83C574.405 558.808 583.516 551.145 583.686 540.331V498.696C583.686 488.052 574.576 479.538 563.422 479.197ZM571.085 540.161C571.085 545.781 567.934 550.804 563.251 553.274C558.568 550.634 555.418 545.781 555.418 540.161V498.525C555.418 492.735 558.568 487.882 563.251 485.243C567.934 487.882 571.085 492.735 571.085 498.525V540.161Z"
        fill="currentColor"
      />
      <path
        d="M510.037 479.197H484.068C484.068 479.197 483.728 481.07 485.771 481.07C487.815 481.07 487.985 490.266 487.985 490.777V548.25C487.985 548.761 487.815 557.957 485.771 557.957C483.728 557.957 484.068 559.83 484.068 559.83H510.037C521.702 559.83 531.153 551.145 531.153 540.331V498.696C531.153 487.882 521.702 479.368 510.037 479.368V479.197ZM518.467 540.161C518.467 548.505 511.826 555.147 503.652 555.147C502.46 555.147 501.608 554.976 500.501 554.806V483.625C501.523 483.455 502.545 483.284 503.652 483.284C511.826 483.284 518.467 490.096 518.467 498.44V540.076V540.161Z"
        fill="currentColor"
      />
      <path
        d="M362.818 531.051C362.818 531.051 357.028 529.518 357.028 535.052C357.028 539.054 355.155 554.721 345.533 555.232H338.722V490.777C338.892 489.244 339.062 481.241 341.02 481.241C342.894 481.241 342.894 479.367 342.894 479.367H322.459C322.459 479.367 322.118 481.241 324.162 481.241C326.375 481.241 326.375 491.117 326.375 491.117V548.42C326.375 548.42 326.375 558.127 324.162 558.127C322.118 558.127 322.459 560 322.459 560H363.073C358.56 541.694 362.903 531.136 362.903 531.136L362.818 531.051Z"
        fill="currentColor"
      />
      <path
        d="M641.245 480.985C643.289 480.985 643.118 479.112 643.118 479.112H622.513C622.513 479.112 622.343 480.985 624.386 480.985C626.43 480.985 626.515 490.01 626.515 490.691V522.195L612.04 479.197H595.437C595.437 479.197 595.267 481.07 597.31 481.07C599.354 481.07 599.524 490.095 599.524 490.776V548.249C599.524 549.101 599.354 557.956 597.31 557.956C595.267 557.956 595.437 559.829 595.437 559.829H611.444C611.444 559.829 611.615 557.956 609.741 557.956C607.528 557.956 607.443 548.079 607.443 548.079V503.122L626.43 559.744H643.033C643.033 559.744 643.374 557.871 641.33 557.871C639.287 557.871 639.031 548.76 639.031 548.249V490.776C639.031 490.095 639.202 481.07 641.33 481.07L641.245 480.985Z"
        fill="currentColor"
      />
      <path
        d="M393.131 479.197H392.96C381.636 479.368 372.525 487.882 372.525 498.696V540.331C372.525 550.804 381.636 559.319 392.96 559.83C404.114 558.808 413.225 551.145 413.395 540.331V498.696C413.225 488.052 404.285 479.538 393.131 479.197ZM400.623 540.161C400.623 545.781 397.473 550.804 392.79 553.274C388.107 550.634 384.957 545.781 384.957 540.161V498.525C384.957 492.735 388.107 487.882 392.79 485.243C397.473 487.882 400.623 492.735 400.623 498.525V540.161Z"
        fill="currentColor"
      />
      <path
        d="M470.782 480.985C472.826 480.985 472.656 479.112 472.656 479.112H452.221C452.221 479.112 451.88 480.985 454.094 480.985C456.138 480.985 456.137 490.01 456.137 490.691V522.195L441.833 479.197H425.23C425.23 479.197 424.889 481.07 427.103 481.07C429.146 481.07 429.146 490.095 429.146 490.776V548.249C429.146 549.101 428.976 557.956 427.103 557.956C425.06 557.956 425.23 559.829 425.23 559.829H441.237C441.237 559.829 441.407 557.956 439.364 557.956C437.235 557.956 437.065 548.079 437.065 548.079V503.122L456.052 559.744H472.656C472.656 559.744 473.167 557.871 470.953 557.871C468.909 557.871 468.654 548.76 468.654 548.249V490.776C468.654 490.095 468.994 481.07 470.953 481.07L470.782 480.985Z"
        fill="currentColor"
      />
      <path
        fillRule="evenodd"
        clipRule="evenodd"
        d="M419.979 110.234C419.979 110.808 420.027 111.369 420.063 111.942C415.477 110.545 410.903 109.112 406.412 107.643L411.679 92.1526C415.059 93.2633 418.451 94.3501 421.819 95.4011C420.648 100.166 419.979 105.123 419.979 110.234Z"
        fill="currentColor"
      />
      <path
        fillRule="evenodd"
        clipRule="evenodd"
        d="M392.102 85.2257L386.823 100.764C384.841 99.9993 382.918 99.223 380.983 98.4467L380.553 98.2795L380.529 80.5798L392.114 85.2257H392.102Z"
        fill="currentColor"
      />
      <path
        fillRule="evenodd"
        clipRule="evenodd"
        d="M501.526 95.2219C500.678 95.0667 499.734 94.9233 498.838 94.8278C499.292 95.5802 499.782 96.3684 500.236 97.1686C500.737 97.9688 501.227 98.7571 501.681 99.5572C502.135 100.357 502.624 101.205 503.03 101.994C502.278 103.881 501.442 105.875 500.487 107.87C499.543 105.923 498.492 103.988 497.346 102.041C496.199 100.095 495.053 98.2077 493.858 96.4162C493.416 95.616 492.915 94.8756 492.413 94.1709C491.171 92.3317 489.929 90.588 488.627 88.9399C488.078 88.1874 487.481 87.447 486.931 86.7543C486.131 85.763 485.343 84.8076 484.495 83.9118C484.053 83.3624 483.599 82.8131 483.098 82.2637C482.596 82.7653 482.106 83.3147 481.7 83.8521C480.852 84.7956 480.052 85.7391 479.216 86.7423C478.667 87.435 478.069 88.1874 477.568 88.9279C478.464 88.8801 479.359 88.8801 480.255 88.8801C481.199 88.8324 482.142 88.8324 483.098 88.8324C484.053 88.8324 484.985 88.8324 485.94 88.8801C487.182 90.4686 488.484 92.2123 489.726 94.0037C487.588 93.8485 485.391 93.8007 483.109 93.8007C480.828 93.8007 478.631 93.8485 476.493 94.0037C475.597 94.0037 474.702 94.0515 473.806 94.147C471.62 94.3023 469.423 94.4934 467.38 94.792C466.437 94.8875 465.541 95.0428 464.645 95.1861C463.403 95.3891 462.161 95.5802 460.967 95.831C460.274 95.9265 459.57 96.0818 458.877 96.2251C459.08 96.8701 459.271 97.515 459.522 98.2196C459.916 99.4139 460.37 100.608 460.871 101.803C461.17 102.651 461.516 103.498 461.863 104.394C462.317 103.594 462.711 102.806 463.153 102.006C463.606 101.158 464.048 100.357 464.55 99.5214C464.992 98.7212 465.493 97.933 465.995 97.1328C468.037 96.7865 470.175 96.5356 472.373 96.3804C471.131 98.1718 469.984 100.059 468.885 102.006C467.739 103.952 466.7 105.935 465.696 107.882C465.302 108.682 464.896 109.422 464.502 110.222C463.559 112.169 462.663 114.152 461.863 116.051C461.516 116.946 461.17 117.794 460.812 118.642C460.358 119.837 459.916 121.079 459.522 122.225C459.271 122.918 459.068 123.623 458.877 124.267C459.57 124.423 460.274 124.566 460.967 124.662C462.161 124.912 463.403 125.163 464.705 125.354C465.601 125.498 466.497 125.605 467.44 125.701C466.939 124.948 466.449 124.16 466.043 123.36C465.493 122.56 464.992 121.771 464.55 120.923C464.096 120.123 463.606 119.275 463.2 118.487C463.893 116.54 464.741 114.606 465.685 112.611C466.676 114.498 467.727 116.445 468.873 118.439C469.972 120.386 471.166 122.273 472.361 124.112C472.815 124.865 473.304 125.605 473.806 126.358C475.048 128.197 476.29 129.94 477.592 131.589H477.64C478.141 132.341 478.691 133.034 479.228 133.726C480.028 134.718 480.876 135.673 481.664 136.617C482.106 137.166 482.608 137.715 483.109 138.205C483.611 137.703 484.053 137.214 484.507 136.664C485.355 135.721 486.155 134.718 486.991 133.726C487.54 133.034 488.09 132.329 488.579 131.589C487.684 131.636 486.788 131.636 485.892 131.636C484.949 131.684 484.053 131.684 483.109 131.684C482.166 131.684 481.222 131.684 480.267 131.636C479.025 129.988 477.723 128.304 476.481 126.513C478.619 126.668 480.816 126.716 483.098 126.716C485.379 126.716 487.528 126.668 489.666 126.513C490.61 126.513 491.505 126.465 492.401 126.369C494.587 126.214 496.736 126.023 498.719 125.725C499.663 125.629 500.606 125.521 501.502 125.378C502.792 125.175 504.046 124.924 505.24 124.685C505.933 124.59 506.637 124.435 507.33 124.291C507.127 123.646 506.936 122.942 506.685 122.249C506.291 121.103 505.837 119.86 505.395 118.666C505.049 117.818 504.703 116.97 504.344 116.075C503.89 116.875 503.496 117.723 502.995 118.511C502.601 119.311 502.099 120.159 501.645 120.947C501.144 121.795 500.702 122.595 500.152 123.384C498.11 123.682 496.02 123.933 493.834 124.136C495.029 122.297 496.223 120.398 497.322 118.463C498.468 116.516 499.46 114.629 500.463 112.742V112.695C500.917 111.847 501.311 111.046 501.705 110.258C502.648 108.264 503.544 106.329 504.344 104.43C504.691 103.534 505.037 102.686 505.336 101.838C505.837 100.644 506.279 99.4498 506.685 98.2554C506.936 97.5627 507.139 96.9059 507.33 96.261C506.637 96.1057 505.933 95.9624 505.24 95.8668C504.046 95.616 502.804 95.413 501.502 95.2219H501.526ZM483.098 118.475C478.619 118.475 474.857 114.713 474.857 110.234C474.857 105.756 478.619 101.994 483.098 101.994C487.576 101.994 491.338 105.756 491.338 110.234C491.338 114.713 487.576 118.475 483.098 118.475Z"
        fill="currentColor"
      />
      <path
        fillRule="evenodd"
        clipRule="evenodd"
        d="M585.544 122.321V138.707C570.436 138.098 555.4 137.023 540.865 135.542C543.075 130.514 544.627 125.152 545.463 119.55C558.541 120.804 572.001 121.736 585.556 122.333L585.544 122.321Z"
        fill="currentColor"
      />
      <path
        fillRule="evenodd"
        clipRule="evenodd"
        d="M483.1 52.0959C451.045 52.0959 424.961 78.1796 424.961 110.235C424.961 142.29 451.045 168.374 483.1 168.374C515.155 168.374 541.239 142.29 541.239 110.235C541.239 78.1796 515.155 52.0959 483.1 52.0959ZM535.375 110.259C535.375 117.377 527.755 123.456 515.561 127.29C515.215 125.701 514.761 124.101 514.212 122.465C524.363 119.228 530.394 114.594 530.394 110.271C530.394 105.947 524.375 101.361 514.271 98.1246C513.626 97.9215 512.922 97.7304 512.229 97.5274C512.026 98.1723 511.835 98.877 511.584 99.5219C510.688 102.161 509.637 104.896 508.347 107.691C508.049 108.539 507.655 109.435 507.201 110.283C507.595 111.131 508.001 112.026 508.395 112.874C509.59 115.657 510.641 118.404 511.536 121.091C511.787 121.784 511.978 122.441 512.181 123.086C512.731 124.781 513.172 126.37 513.579 127.97C513.782 128.663 513.925 129.32 514.08 129.965C514.331 131.255 514.582 132.509 514.773 133.703C516.517 144.703 514.57 152.466 509.243 155.559C507.655 156.455 505.863 156.908 503.917 156.908C499.235 156.908 493.61 154.364 487.543 149.444C486.599 148.644 485.596 147.856 484.652 146.9C485.799 145.801 486.993 144.607 488.14 143.317C488.988 144.117 489.836 144.858 490.684 145.562C497.408 151.044 503.427 153.182 506.759 151.235C510.091 149.348 511.238 143.066 509.84 134.503C509.685 133.404 509.446 132.318 509.243 131.219C509.088 130.526 508.897 129.869 508.742 129.177C508.049 129.32 507.344 129.475 506.652 129.63C503.917 130.18 500.979 130.622 497.945 130.92C497.002 131.076 496.058 131.171 495.103 131.219C494.601 131.971 494.052 132.712 493.514 133.464C491.723 135.901 489.836 138.194 487.985 140.331C487.543 140.881 487.041 141.382 486.587 141.872C485.441 143.114 484.294 144.308 483.1 145.407C482.598 145.957 482.109 146.458 481.559 146.9C480.616 147.796 479.612 148.644 478.669 149.444C472.59 154.376 466.965 156.908 462.295 156.908C460.348 156.908 458.557 156.455 456.968 155.559C451.642 152.477 449.647 144.703 451.439 133.703C451.642 132.509 451.881 131.267 452.131 129.965C453.672 130.466 455.272 130.861 456.956 131.207C456.753 132.306 456.503 133.392 456.359 134.491C454.962 143.054 456.108 149.325 459.441 151.223C462.773 153.17 468.804 151.02 475.516 145.551C476.364 144.858 477.212 144.105 478.06 143.305C478.561 142.851 479.111 142.409 479.601 141.86C479.099 141.358 478.657 140.869 478.155 140.319C476.316 138.182 474.477 135.889 472.626 133.452C472.076 132.7 471.575 131.959 471.037 131.207C470.094 131.159 469.15 131.064 468.255 130.908C465.221 130.61 462.283 130.156 459.548 129.618C458.855 129.475 458.151 129.32 457.458 129.165C455.762 128.818 454.174 128.412 452.633 127.97C451.94 127.767 451.283 127.576 450.639 127.325C438.445 123.492 430.825 117.425 430.825 110.295C430.825 103.165 438.397 97.1572 450.543 93.3712C450.937 94.9119 451.391 96.5122 451.94 98.1484C441.837 101.385 435.817 105.959 435.817 110.295C435.817 114.63 441.837 119.252 452 122.488C452.645 122.691 453.35 122.883 454.042 123.086C454.245 122.441 454.436 121.796 454.687 121.091C455.583 118.404 456.634 115.669 457.828 112.874C458.222 112.026 458.628 111.131 459.023 110.283C458.581 109.435 458.175 108.539 457.876 107.691C456.586 104.908 455.535 102.161 454.639 99.5219C454.389 98.877 454.198 98.1723 453.995 97.5274C453.445 95.8315 453.003 94.2431 452.645 92.6427C452.442 91.95 452.251 91.2453 452.143 90.6004C449.361 78.1557 450.854 68.5416 456.968 65.0184C463.095 61.4354 472.196 65.0184 481.655 73.6293C480.46 74.7281 479.266 75.9702 478.072 77.26C471.897 71.6348 466.272 68.649 462.343 68.649C461.244 68.649 460.3 68.8521 459.453 69.3417C455.714 71.4796 454.723 79.0037 456.968 89.3583C457.112 90.0033 457.267 90.7079 457.47 91.4484C458.163 91.3051 458.867 91.1498 459.56 91.0543C462.295 90.4571 465.185 90.0033 468.219 89.7047C469.162 89.5494 470.106 89.4539 471.061 89.4061C471.563 88.6059 472.112 87.8655 472.65 87.113C474.441 84.7244 476.28 82.4314 478.179 80.2936C478.621 79.7442 479.123 79.2426 479.624 78.7529C480.771 77.463 481.965 76.209 483.16 75.1222C483.661 74.5728 484.211 74.0712 484.7 73.6293C485.644 72.7814 486.587 71.9334 487.543 71.1929C496.201 64.1226 503.917 61.937 509.243 65.0184C515.37 68.5535 516.863 78.1557 514.068 90.6004C512.528 90.0988 510.927 89.7047 509.243 89.3583C511.489 79.0037 510.485 71.4915 506.759 69.3417C505.959 68.8401 504.968 68.649 503.869 68.649C500.489 68.649 495.759 70.8943 490.672 75.0267C489.824 75.7193 489.024 76.424 488.188 77.2122C487.686 77.6661 487.137 78.108 486.647 78.6573C487.089 79.159 487.59 79.7083 488.044 80.2458C489.883 82.3836 491.723 84.6767 493.574 87.113C494.123 87.8655 494.673 88.6059 495.222 89.4061C496.166 89.4539 497.061 89.5494 497.957 89.7047C501.038 90.0033 503.929 90.4571 506.723 91.0543C507.416 91.1498 508.121 91.3051 508.765 91.4484C510.461 91.7947 512.05 92.2008 513.59 92.6427C514.283 92.8457 514.988 93.0368 515.681 93.3354C527.827 97.1213 535.399 103.188 535.399 110.259H535.375Z"
        fill="currentColor"
      />
      <path
        fillRule="evenodd"
        clipRule="evenodd"
        d="M393.202 81.9653C393.512 81.0457 394.169 80.2933 395.041 79.8633C395.925 79.4334 396.928 79.3617 397.836 79.6842L410.579 84.0195C411.499 84.33 412.251 84.9869 412.681 85.8707C413.111 86.7545 413.171 87.7458 412.86 88.6654L412.645 89.2984C415.846 90.3732 419.142 91.4242 422.558 92.4752C430.249 66.296 454.458 47.1154 483.086 47.1154C517.888 47.1154 546.205 75.4325 546.205 110.235C546.205 112.349 546.097 114.439 545.882 116.505C558.745 117.771 571.99 118.702 585.533 119.264V79.1468C585.545 21.7125 532.148 0 483.038 0C433.928 0 381.689 21.2826 380.578 77.3075C384.507 78.9915 388.64 80.6755 393.071 82.3714L393.214 81.9653H393.202ZM547.351 98.7573C547.244 98.196 547.136 97.6346 547.017 97.0614L553.072 95.0908L553.597 96.715L547.339 98.7453L547.351 98.7573ZM556.691 86.3245C557.527 88.8804 556.822 91.5556 555.126 93.4068L551.257 81.5115C553.717 82.0131 555.855 83.7687 556.679 86.3245H556.691ZM552.26 92.5827L546.384 94.4936C546.061 93.0246 545.631 91.5437 545.154 90.0747C544.676 88.6057 544.15 87.1606 543.553 85.7752L549.429 83.8643L552.26 92.5708V92.5827ZM548.092 79.732L548.617 81.3562L542.562 83.3268C542.311 82.7894 542.072 82.2758 541.834 81.7623L548.092 79.732ZM506.649 42.4218L505.276 48.8591C504.738 48.68 504.201 48.4889 503.64 48.2978L504.965 42.0635L506.637 42.4218H506.649ZM499.185 34.5513C501.812 35.1126 503.783 37.0474 504.535 39.448L492.306 36.8444C493.978 34.9693 496.557 33.99 499.185 34.5513ZM493.428 39.6152L502.386 41.5141L501.108 47.5573C499.674 47.1035 498.182 46.7332 496.665 46.4108C495.16 46.0883 493.631 45.8136 492.138 45.6584L493.416 39.6152H493.428ZM489.177 38.7075L490.849 39.0658L489.523 45.3001C488.938 45.2404 488.376 45.1926 487.803 45.1448L489.177 38.7075ZM425.592 58.4613C427.395 56.4549 430.058 55.7383 432.507 56.2758L424.135 65.5675C423.346 63.1789 423.788 60.4558 425.592 58.4613ZM429.079 73.6171L424.194 69.2101L425.341 67.9322L430.07 72.1959C429.736 72.6736 429.401 73.1394 429.079 73.6052V73.6171ZM434.609 66.5707C433.581 67.7172 432.578 68.8996 431.694 70.1059L427.108 65.9735L433.235 59.166L437.821 63.2983C436.711 64.3135 435.636 65.4242 434.609 66.5707ZM439.732 61.471L434.991 57.2073L436.137 55.9294L441.022 60.3364C440.592 60.7066 440.162 61.0888 439.72 61.471H439.732ZM426.189 22.1305C437.893 15.0124 451.329 11.2265 465.063 11.2265C467.798 11.2265 470.486 11.4295 473.232 11.6803C458.543 11.9311 444.056 15.6574 431.121 22.6321C418.127 29.6069 407.032 39.5555 398.72 51.7016C404.99 39.5077 414.496 29.2964 426.201 22.1305H426.189Z"
        fill="currentColor"
      />
      <path
        fillRule="evenodd"
        clipRule="evenodd"
        d="M626.796 136.748C626.796 136.748 626.713 136.689 626.677 136.653C626.414 136.39 626.092 136.187 625.805 135.936C625.208 135.411 624.611 134.861 623.954 134.419C620.908 132.365 617.302 131.243 613.563 131.243C605.968 131.243 598.575 135.65 593.583 141.251C591.612 143.305 589.534 145.371 587.384 147.354C586.835 147.903 586.226 148.429 585.581 148.954V141.585C585.33 141.585 585.139 141.585 584.888 141.538C584.387 141.538 583.897 141.538 583.443 141.49C572.097 140.988 560.99 140.295 550.086 139.352C549.943 139.352 549.787 139.304 549.644 139.304C547.16 139.053 544.616 138.803 542.18 138.552C541.284 138.504 540.436 138.397 539.54 138.301C539.493 138.397 539.397 138.552 539.337 138.647C538.74 139.842 538.143 140.988 537.45 142.087C535.014 146.315 532.028 150.256 528.636 153.731C527.788 154.627 526.94 155.475 526.045 156.275C524.898 157.374 523.752 158.365 522.557 159.309C511.761 168.015 498.062 173.246 483.133 173.246C449.979 173.246 422.749 147.509 420.265 114.952C415.189 113.459 410.257 111.919 405.527 110.318L405.324 110.772C405.025 111.716 404.381 112.468 403.485 112.91C402.983 113.161 402.434 113.256 401.896 113.256C401.502 113.256 401.096 113.209 400.702 113.053L387.959 108.718C386.072 108.073 385.021 105.983 385.666 104.084L385.917 103.439C384.077 102.746 382.381 102.042 380.638 101.349L380.685 148.739L377.019 145.634C375.526 144.177 374.045 142.72 372.576 141.251C367.572 135.674 360.311 131.243 352.595 131.243C350.171 131.243 347.758 131.72 345.525 132.652C343.292 133.583 341.238 134.933 339.518 136.653C339.494 136.677 339.482 136.701 339.47 136.713C339.458 136.713 339.446 136.736 339.434 136.748C339.076 137.119 338.801 137.549 338.479 137.943C338.049 138.468 337.571 138.958 337.201 139.519C337.189 139.543 337.165 139.567 337.141 139.591C336.795 140.092 336.496 140.582 336.198 141.132C335.899 141.681 335.648 142.23 335.397 142.78C335.147 143.329 334.944 143.926 334.8 144.476C334.299 146.219 334 148.011 334 149.85C334 169.616 384.973 203.116 400.654 210.831C426.296 223.479 454.613 230.048 483.193 230C511.773 230.048 539.994 223.527 565.636 210.831C581.317 203.116 632.29 169.616 632.29 149.85C632.29 144.917 630.296 140.248 626.82 136.76L626.796 136.748ZM542.371 155.666C542.765 157.804 542.227 160.145 540.627 161.889C539.528 163.178 538.035 163.883 536.495 164.134C535.551 164.337 534.608 164.277 533.712 164.086L542.12 154.782C542.216 155.081 542.323 155.38 542.371 155.678V155.666ZM537.14 146.757L542.072 151.14L540.926 152.43L536.148 148.154C536.495 147.652 536.841 147.211 537.14 146.757ZM531.622 153.767C532.673 152.621 533.664 151.426 534.56 150.232L534.763 150.435L539.146 154.364L533.82 160.288L533.019 161.184L528.445 157.052C529.544 156.06 530.631 154.914 531.634 153.767H531.622ZM526.487 158.903L526.69 159.106L531.264 163.143L530.32 164.194L530.117 164.444L525.185 160.013C525.639 159.667 526.08 159.261 526.475 158.915L526.487 158.903ZM476.66 175.229L476.708 175.074C477.305 175.121 477.854 175.169 478.451 175.229L477.054 181.654L476.003 181.404L475.406 181.308L476.648 175.229H476.66ZM465.111 172.984L465.159 172.781C466.556 173.234 468.049 173.629 469.59 173.927C471.083 174.274 472.623 174.524 474.068 174.68L472.826 180.759L472.229 180.615L463.869 178.824L465.111 172.996V172.984ZM473.925 183.494C472.874 184.688 471.536 185.488 470.044 185.787C469.1 185.99 468.049 186.037 467.058 185.787C464.812 185.333 463.081 183.84 462.185 181.953C461.982 181.607 461.839 181.26 461.731 180.902L473.925 183.494ZM460.931 171.694L460.979 171.491C461.528 171.694 462.03 171.837 462.627 172.04L461.277 178.263L459.832 177.964L459.581 177.916L460.931 171.694ZM423.692 136.999C423.943 137.549 424.194 138.098 424.385 138.588H424.337L418.163 140.63L417.613 138.982L423.585 137.035L423.681 136.987L423.692 136.999ZM419.859 125.844C420.157 127.337 420.611 128.83 421.053 130.275C421.555 131.768 422.104 133.213 422.701 134.551L416.825 136.498L416.622 135.9L413.983 127.791L419.703 125.904L419.859 125.856V125.844ZM418.82 121.664L418.915 121.617C419.011 122.166 419.118 122.715 419.214 123.312L413.195 125.259L412.753 123.91L412.657 123.659L418.832 121.664H418.82ZM410.746 127.385C410.842 127.23 410.949 127.086 411.093 126.931L414.974 138.826C414.377 138.731 413.827 138.528 413.278 138.277C413.23 138.277 413.183 138.229 413.183 138.229C411.534 137.381 410.197 135.936 409.552 134.001C408.752 131.661 409.301 129.176 410.746 127.385ZM533.796 190.6C517.876 197.001 500.618 200.321 483.157 200.321C465.696 200.321 448.45 197.013 432.518 190.6C416.562 184.162 402.267 174.727 390.634 162.987C415.726 184.258 448.797 196.058 483.157 196.022C517.481 196.082 550.552 184.246 575.608 162.987C563.964 174.763 549.716 184.162 533.796 190.6Z"
        fill="currentColor"
      />
      <path
        fillRule="evenodd"
        clipRule="evenodd"
        d="M396.114 83.5777L388.924 104.681C388.745 105.195 389.02 105.756 389.533 105.923L401.142 109.876C401.655 110.056 402.217 109.781 402.384 109.267L409.574 88.1758C409.753 87.6623 409.478 87.1009 408.964 86.9337L397.344 82.9686C396.83 82.7895 396.269 83.0642 396.102 83.5777H396.114Z"
        fill="currentColor"
      />
    </svg>
  )
}
